package com.itheima.service.impl;

import com.itheima.common.GlobalExceptionHandler;
import com.itheima.dao.CheckGroupCheckitemDao;
import com.itheima.dao.CheckitemDao;
import com.itheima.dto.PageResult;
import com.itheima.dto.QueryPageBean;
import com.itheima.dto.Result;
import com.itheima.pojo.CheckGroup;
import com.itheima.pojo.CheckItem;
import com.itheima.service.CheckitemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;
@Service
@Transactional
public class CheckitemServiceImpl implements CheckitemService {
    @Autowired
    private CheckitemDao checkitemDao;
    @Autowired
    private CheckGroupCheckitemDao checkGroupCheckitemdao;

    //分页条件查询
    public PageResult findbyPages(QueryPageBean queryPageBean) {
        //页码
        Integer page = queryPageBean.getCurrentPage();
        //每页记录数
        Integer pageSize = queryPageBean.getPageSize();
        //查询条件
        String queryString = queryPageBean.getQueryString();
        //起始索引
        page = (page - 1) * 10;

        List<CheckItem> pages = checkitemDao.findPages(page, pageSize, queryString);
        Long pagesCound = checkitemDao.findPagesCound(page, pageSize, queryString);

        return new PageResult(pagesCound,pages) ;
    }
    // 新增检查项
    public void saveCheckitem(CheckItem checkItem) {
        checkitemDao.saveCheckitem(checkItem);
    }

    // 根据id查询检查项
    public CheckItem selectById(Integer id) {
        CheckItem checkItem = checkitemDao.selectByid(id);
        return checkItem;
    }
    // 编辑检查项
    public void updateByid(CheckItem checkItem) {
        checkitemDao.updateCheckitem(checkItem);
    }
    // 查询所有
    public List<CheckItem> selectAll() {
        List<CheckItem> checkItemList = checkitemDao.selectAll();
        return checkItemList;
    }
    // 删除检查项
    public Integer deleteCheckitem(Integer id) {
        Integer integer = checkGroupCheckitemdao.selectByCheckitemId(id);
        if (integer != 0) {
            return 0;
        } else {
            checkitemDao.deleteById(id);
            return 1;
        }


    }
}
